package com.easy.service;

import com.easy.bean.ConsumptionRecord;
import com.easy.util.Page;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface ConsumptionRecordService {

    /**
     * 添加消费记录
     * @param consumptionRecord 消费记录对象
     * @return 添加的消费记录对象
     */
    ConsumptionRecord add(ConsumptionRecord consumptionRecord);

    /**
     * 删除消费记录（逻辑删除）
     * @param id 消费记录ID
     * @return 影响行数
     */
    int del(Integer id);

    /**
     * 编辑消费记录信息
     * @param consumptionRecord 消费记录对象
     * @return 更新后的消费记录对象
     */
    ConsumptionRecord edit(ConsumptionRecord consumptionRecord);


    List<ConsumptionRecord> all();

    /**
     * 根据ID查询单个消费记录
     * @param id 消费记录ID
     * @return 消费记录对象
     */
    ConsumptionRecord one(Integer id);

    /**
     * 分页查询消费记录
     * @param page 分页对象
     * @param consumptionRecord 查询条件
     */
    void page(Page page, ConsumptionRecord consumptionRecord);

    BigDecimal todayIncome();
    BigDecimal getIncomeByDate(String date);

    // 查询今天各支付方式的收入及占比
    List<Map<String, Object>> todayIncomeByMethod();

}
